import request from '@/config/axios'

// Saas订单 VO
export interface TradeOrderVO {
  type: number // 订单类型
  terminal: number // 订单来源
  userId: number // 会员ID
  userIp: string // 会员ip
  userRemark: string // 会员备注
  status: number // 订单状态
  proxyUserId: number // 代理人ID
  cartNo: string // 购物车编号
  finishTime: Date // 完成时间
  cancelTime: Date // 取消时间
  cancelType: number // 取消类型
  remark: string // 备注
  payOrderId: number // 支付订单ID
  payStatus: boolean // 是否支付
  payTime: Date // 支付时间
  payChannelCode: string // 支付渠道
  totalPrice: number // 原价(分)
  discountPrice: number // 优惠金额(分)
  adjustPrice: number // 调价（正加，负减）
  payPrice: number // 应付金额
  refundType: number // 退款类型
  refundPrice: number // 退款金额
  usePoint: number // 使用积分
  pointPrice: number // 积分抵扣金额(分)
  givePoint: number // 赠送积分
  refundPoint: number // 退款退还积分
  relateTenantId: number // 关联租户ID
}

// Saas订单 API
export const TradeOrderApi = {
  // 查询Saas订单分页
  getTradeOrderPage: async (params: any) => {
    return await request.get({ url: `/package/trade-order/page`, params })
  },

  // 查询Saas订单详情
  getTradeOrder: async (id: number) => {
    return await request.get({ url: `/package/trade-order/get?id=` + id })
  },

  // 新增Saas订单
  createTradeOrder: async (data: TradeOrderVO) => {
    return await request.post({ url: `/package/trade-order/create`, data })
  },

  // 修改Saas订单
  updateTradeOrder: async (data: TradeOrderVO) => {
    return await request.put({ url: `/package/trade-order/update`, data })
  },

  // 删除Saas订单
  deleteTradeOrder: async (id: number) => {
    return await request.delete({ url: `/package/trade-order/delete?id=` + id })
  },

  // 导出Saas订单 Excel
  exportTradeOrder: async (params) => {
    return await request.download({ url: `/package/trade-order/export-excel`, params })
  },

  // 获取Saas订单详情（配置清单）
  getTradeOrderDetail: async (cartNo : string) => {
    return await request.get({ url: `/package/trade-order/detail?cartNo=` + cartNo })
  }
}